The Constraint Database Approach to Software Verification
نویسنده
چکیده
Based on constraint database techniques, we present a new approach to software verification. This new approach has some similarity to abstract interpretation that uses various widening operators; therefore, we call the new approach l-u widening. We show that our l-u widening leads to a more precise over-approximation of the invariants in a program than comparable previously proposed widening operators based on difference-bound matrices, although l-u widening can be computed as efficiently as the other widening operators. We show that constraint database techniques can compute non-convex program invariants too. Finally, we give a compact representation of addition-bound matrices, which generalize difference-bound matrices.
منابع مشابه
A Trust Based Probabilistic Method for Efficient Correctness Verification in Database Outsourcing
Correctness verification of query results is a significant challenge in database outsourcing. Most of the proposed approaches impose high overhead, which makes them impractical in real scenarios. Probabilistic approaches are proposed in order to reduce the computation overhead pertaining to the verification process. In this paper, we use the notion of trust as the basis of our probabilistic app...
متن کاملSoftware Architecture OCL2Trigger: Deriving active mechanisms for relational databases using Model-Driven Architectureq
Transforming integrity constraints into active rules or triggers for verifying database consistency pro duces a serious and complex problem related to real time behaviour that must be considered for any implementation. Our main contribution to this work is to provide a complete approach for deriving the active mechanisms for Relational Databases from the specification of the integrity constrain...
متن کاملA Constraint-Based Approach to Verification of Programs with Floating-Point Numbers
Software plays an important role in our daily lives. There is software in our cell phones, and in our workplaces, just to mention a few examples. We want reliable software. This is specially desired in critical software such as software in airplanes, software in medical applications, and software in nuclear plants. Software Validation and Verification help us to achieve reliable software. Verif...
متن کاملNew Model Checking Techniques for Software Systems Modeled with Graphs and Graph Transformations
In today’s software, no matter how security and safety critical it may be, defects and failures are common. With the rising complexity of software and our growing dependency on its correct functioning as it permeates our every day life the software development process requires new approaches to integrate formal verification techniques. This thesis presents approaches on efficiently verifying so...
متن کاملTCAS software verification using constraint programming
Safety-critical software must be thoroughly verified before being exploited in commercial applications. In particular, any TCAS (Traffic Alert and Collision Avoidance System) implementation must be verified against safety properties extracted from the anti-collision theory that regulates the controlled airspace. This verification step is currently realized with manual code reviews and testing. ...
متن کامل